import requests
from py02_tpshop_api import TpshopLoginApi

class TestTpshopLogin(object):
    #定义测试方法-登录成功
    def test01_login_success(self):
        #创建session实例
        session = requests.Session()
        #调用自己封装的API，发送 验证码 请求
        TpshopLoginApi.get_verify(session)

        #准备 请求体数据
        req_data = {"username": "13600001111", "password": "123456", "verify_code": "8888"}

        #调用自己封装的API，发送 登录 请求
        resp = TpshopLoginApi.login(session, req_data)

        #打印响应结果
        print("登录成功：",resp.json())

        #断言
        assert 200 == resp.status_code
        assert 1 == resp.json().get("status")
        assert "登陆成功" in resp.json().get("msg")



    #定义测试方法-密码错误
    def test02_pwd_false(self):
        # 创建session实例
        session = requests.Session()
        # 调用自己封装的API，发送 验证码 请求
        TpshopLoginApi.get_verify(session)

        # 准备 请求体数据
        req_data = {"username": "13600001111", "password": "12345687", "verify_code": "8888"}

        # 调用自己封装的API，发送 登录 请求
        resp = TpshopLoginApi.login(session, req_data)

        # 打印响应结果
        print("密码错误：", resp.json())

        # 断言
        assert 200 == resp.status_code
        assert -2 == resp.json().get("status")
        assert "密码错误!" in resp.json().get("msg")

    #定义测试方法-验证码错误
    def test03_verify_err(self):
        # 创建session实例
        session = requests.Session()
        # 调用自己封装的API，发送 验证码 请求
        TpshopLoginApi.get_verify(session)

        # 准备 请求体数据
        req_data = {"username": "13600001111", "password": "12345687", "verify_code": "9988"}

        # 调用自己封装的API，发送 登录 请求
        resp = TpshopLoginApi.login(session, req_data)

        # 打印响应结果
        print("验证码错误：", resp.json())

        # 断言
        assert 200 == resp.status_code
        assert 0 == resp.json().get("status")
        assert "验证码错误" in resp.json().get("msg")
